package com.example.messagemodule.listener;

import com.hyphenate.EMGroupChangeListener;
import com.hyphenate.chat.EMMucSharedFile;

import java.util.List;

public class IMGroupChangeListener implements EMGroupChangeListener {
    /**
     * 接收到群组加入邀请
     * @param groupId
     * @param groupName
     * @param inviter
     * @param reason
     */
    @Override
    public void onInvitationReceived(String groupId, String groupName, String inviter, String reason) {

    }

    /**
     * 用户申请加入群
     * @param groupId
     * @param groupName
     * @param applicant
     * @param reason
     */
    @Override
    public void onRequestToJoinReceived(String groupId, String groupName, String applicant, String reason) {

    }

    /**
     * 加群申请被同意
     * @param groupId
     * @param groupName
     * @param accepter
     */
    @Override
    public void onRequestToJoinAccepted(String groupId, String groupName, String accepter) {

    }

    /**
     * 加群申请被拒绝
     * @param groupId
     * @param groupName
     * @param decliner
     * @param reason
     */
    @Override
    public void onRequestToJoinDeclined(String groupId, String groupName, String decliner, String reason) {

    }

    /**
     * /群组邀请被同意
     * @param groupId
     * @param invitee
     * @param reason
     */
    @Override
    public void onInvitationAccepted(String groupId, String invitee, String reason) {

    }

    /**
     * 群组邀请被拒绝
     * @param groupId
     * @param invitee
     * @param reason
     */
    @Override
    public void onInvitationDeclined(String groupId, String invitee, String reason) {

    }

    /**
     * 用户被移除
     * @param groupId
     * @param groupName
     */
    @Override
    public void onUserRemoved(String groupId, String groupName) {

    }

    /**
     * 群组解散
     * @param groupId
     * @param groupName
     */
    @Override
    public void onGroupDestroyed(String groupId, String groupName) {

    }

    /**
     * 接收邀请时自动加入到群组的通知
     * @param groupId
     * @param inviter
     * @param inviteMessage
     */
    @Override
    public void onAutoAcceptInvitationFromGroup(String groupId, String inviter, String inviteMessage) {

    }

    /**
     * 成员禁言的通知
     * @param groupId
     * @param mutes
     * @param muteExpire
     */
    @Override
    public void onMuteListAdded(String groupId, List<String> mutes, long muteExpire) {

    }

    /**
     * 成员从禁言列表里移除通知
     * @param groupId
     * @param mutes
     */
    @Override
    public void onMuteListRemoved(String groupId, List<String> mutes) {

    }

    /**
     * 成员被加到白名单中
     * @param groupId
     * @param whitelist
     */
    @Override
    public void onWhiteListAdded(String groupId, List<String> whitelist) {

    }

    /**
     * 成员从白名单中被移除
     * @param groupId
     * @param whitelist
     */
    @Override
    public void onWhiteListRemoved(String groupId, List<String> whitelist) {

    }

    /**
     * 全员禁言是否开启
     * @param groupId
     * @param isMuted
     */
    @Override
    public void onAllMemberMuteStateChanged(String groupId, boolean isMuted) {

    }

    /**
     * 增加管理员的通知
     * @param groupId
     * @param administrator
     */
    @Override
    public void onAdminAdded(String groupId, String administrator) {

    }

    /**
     * 管理员移除的通知
     * @param groupId
     * @param administrator
     */
    @Override
    public void onAdminRemoved(String groupId, String administrator) {

    }

    /**
     * 群所有者变动通知
     * @param groupId
     * @param newOwner
     * @param oldOwner
     */
    @Override
    public void onOwnerChanged(String groupId, String newOwner, String oldOwner) {

    }

    /**
     * 群组加入新成员通知
     * @param groupId
     * @param member
     */
    @Override
    public void onMemberJoined(String groupId, String member) {

    }

    /**
     * 群成员退出通知
     * @param groupId
     * @param member
     */
    @Override
    public void onMemberExited(String groupId, String member) {

    }

    /**
     * 群公告变动通知
     * @param groupId
     * @param announcement
     */
    @Override
    public void onAnnouncementChanged(String groupId, String announcement) {

    }

    /**
     * 增加共享文件的通知
     * @param groupId
     * @param sharedFile
     */
    @Override
    public void onSharedFileAdded(String groupId, EMMucSharedFile sharedFile) {

    }

    /**
     * 群共享文件删除通知
     * @param groupId
     * @param fileId
     */
    @Override
    public void onSharedFileDeleted(String groupId, String fileId) {

    }

}
